Data processors use queuing mechanisms to control the flow of data within the system in a number of different scenarios, such as in a system having multiple processor cores and/or multiple functional blocks for manipulating data. Almost all queuing mechanisms that manage a large number of queues such as those offering per-flow queuing, employ a “linked-list” structure of shared resources to achieve dynamic scaling of queues. Furthermore, queuing mechanisms are often designed for a paradigm in which “tokens” or descriptors are stored within the queue structure rather than the actual queued entity in order to improve performance, fault tolerance, and simplicity of the queue structure. Tokens can be uniform size descriptions of references to the data or entity being queued. However, even with scalable storage of tokens stored in queues, the movement of the tokens can still be a bottleneck between the processor and the memory system.